package com.ruoyi.leaveManage.bo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.Date;
import java.util.Map;
import java.util.HashMap;

import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 请假信息分页查询对象 leave_manage
 *
 * @author ruoyi
 * @date 2021-04-26
 */
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel("请假信息分页查询对象")
public class LeaveManageQueryBo extends BaseEntity {

	/** 分页大小 */
	@ApiModelProperty("分页大小")
	private Integer pageSize;
	/** 当前页数 */
	@ApiModelProperty("当前页数")
	private Integer pageNum;
	/** 排序列 */
	@ApiModelProperty("排序列")
	private String orderByColumn;
	/** 排序的方向desc或者asc */
	@ApiModelProperty(value = "排序的方向", example = "asc,desc")
	private String isAsc;

	@ApiModelProperty("时间段")
	private Integer timeSlot;

	/** 用户ID */
	@ApiModelProperty("用户ID")
	private Long userId;

	@ApiModelProperty("用户姓名")
	private String nickName;
	/** 年级 */
	@ApiModelProperty("年级")
	private String  grade;

	/** 学院 */
	@ApiModelProperty("学院")
	private String  college;

	/** 专业 */
	@ApiModelProperty("专业")
	private String  major;

	/** 请假类型  0事假 1病假 2实习 3其他 */
	@ApiModelProperty("请假类型  0事假 1病假 2实习 3其他")
	private Long type;
	/** 健康状况 */
	@ApiModelProperty("健康状况")
	private String healthCondition;
	/** 去往地 */
	@ApiModelProperty("去往地")
	private String destination;
	/** 上传资料照片 */
	@ApiModelProperty("上传资料照片")
	private String image;
	/** 本人联系方式 */
	@ApiModelProperty("本人联系方式")
	private String selfPhone;
	/** 时长 */
	@ApiModelProperty("时长")
	private Long hour;
	/** 紧急联系方式 */
	@ApiModelProperty("紧急联系方式")
	private String backupPhone;
	/** 导员审批状态 0待审核1已通过2已驳回 */
	@ApiModelProperty("导员审批状态 0待审核1已通过2已驳回")
	private Long approveStatusGuide;
	/** 导员审批人 */
	@ApiModelProperty("导员审批人")
	private String approveByGuide;
	/** 领导审批状态 0待审核1已通过2已驳回 */
	@ApiModelProperty("领导审批状态 0待审核1已通过2已驳回")
	private Long approveStatusLeading;
	/** 领导审批人 */
	@ApiModelProperty("领导审批人")
	private String approveByLeading;
	/** 请假开始时间 */
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ApiModelProperty("请假开始时间")
	private Date startTime;
	/** 请假结束时间 */
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ApiModelProperty("请假结束时间")
	private Date endTime;
	/** 销假状态 0未销假 1已销假 */
	@ApiModelProperty("销假状态 0未销假 1已销假")
	private Long cancellationStatus;
	/** 学院领导 导员 学生 关联 */
	@ApiModelProperty("学院领导 导员 学生 关联")
	private Long userIds;

}
